iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0
AI & Data

AI 營養師 + Web3 數位健康護照系列 第 7

Day7. 從零開始打造個人專屬 AI 營養顧問 Ep. 6:Google Colab 實作台灣夜市小吃的YOLO模型

  • 分享至 

  • xImage
  •  

本日重點

  • 介紹 Google Colab 雲端運算環境對 AI 專案的優勢
  • 在 Colab 上安裝並設置 YOLO 訓練環境
  • 影像資料集的匯入與前處理步驟詳解
  • 實際在 Colab 執行 YOLO 夜市小吃模型訓練、測試與推論流程
  • 常見實作問題解析及解決技巧分享

一、認識 Colab

Colab(Colaboratory)是一個由 Google 提供的雲端 Python 編輯器,它的最大特色是「免安裝、免設定」,只要有瀏覽器就能開始寫程式。

https://ithelp.ithome.com.tw/upload/images/20250921/20129220evhKJIhEoK.jpg

開啟 Google Colab 頁面,就會有一份現成的教學文件,鉅細靡遺地將初學者需要了解的都一一說明。這份文件就是一個 Colab 筆記本,它不只是教學內容,更是一個可以直接互動的程式環境。

https://ithelp.ithome.com.tw/upload/images/20250921/20129220j9BQtuzLdg.jpg

這份文件不只是教你怎麼用 Colab,還包含許多範例與資源:

  • 資料科學應用:使用 NumPy、Matplotlib 等工具進行資料分析與視覺化。
  • 機器學習範例:展示如何使用 TensorFlow、TPU 等工具訓練模型。
  • Gemini API:介紹如何使用 Google DeepMind 的多模態模型進行進階推論。
  • 互動式元件:包含表單、小工具等,讓筆記本更具互動性。

https://ithelp.ithome.com.tw/upload/images/20250921/20129220SzJiNmEYJm.jpg

依照自己的需求,跳過不感興趣的部分,或深入探索特定主題。

https://ithelp.ithome.com.tw/upload/images/20250921/20129220u8EaJqiAeU.jpg

最重要的,Colab 不受到電腦硬體等級的限制

https://ithelp.ithome.com.tw/upload/images/20250921/20129220F2zR0qcmGx.jpg


二、Gemini: 讓 Colab 更加得心應手

1. Gemini 是什麼?

Colab 的說明文件中,一開始就是在介紹 Gemini

https://ithelp.ithome.com.tw/upload/images/20250921/20129220R7tgOjRGOP.jpg

在 Colab 頁面的右上方,也會看到 Gemini 的功能鍵

https://ithelp.ithome.com.tw/upload/images/20250921/20129220Hfpogza9Hr.jpg


三、在 Colab 上建立第一個檔案

對 Colab & Gemini 有個基本的認識後,接著就來建立一個 Colab 檔案

https://ithelp.ithome.com.tw/upload/images/20250921/20129220sb63fob3nj.jpg

檔案 --> 在雲端硬碟中建立新筆記本 (可以試著在 cell 裡面寫寫 code)

https://ithelp.ithome.com.tw/upload/images/20250921/20129220MjocYwt1gl.jpg

已經開始放空的人就直接召喚 Gemini 吧

https://ithelp.ithome.com.tw/upload/images/20250921/20129220r2oo9tfhh0.jpg

寫 Prompt 的地方(將任務交給 Gemini)

https://ithelp.ithome.com.tw/upload/images/20250921/20129220gsgRckbZnU.jpg

送出後,Gemini 就會開始規劃

https://ithelp.ithome.com.tw/upload/images/20250921/20129220DTTkStee9t.jpg

如果接受 Gemini 的建議,就按下接受並自動執行(或是逐步執行也可以);Colab 就會開始一一生成內容,全部執行需要一點時間

https://ithelp.ithome.com.tw/upload/images/20250921/20129220bK5sCrItJt.jpg

不接受的話,選擇取消,也可以繼續修改 Prompt


四、實作流程紀錄:

1. 安裝 YOLO 與環境初始化

# 安裝 YOLO
!pip install ultralytics

# 連接 Google Drive 保存訓練結果
from google.colab import drive
drive.mount('/content/drive')

2. 台灣夜市小吃資料集準備 & 標註

Roboflow下載資料集後,上傳至 Colab,檢查資料夾結構。記得要整理成 YOLO 格式(txt 標註檔只存 bbox 與類別)。提供一個 Python 匯入 Roboflow 專案的方法:

# Roboflow 套件安裝
!pip install roboflow

from roboflow import Roboflow
rf = Roboflow(api_key="在這裡貼上 API_KEY")
project = rf.workspace().project("taiwan-night-market")
dataset = project.version("1").download("yolov8")

3. 模型訓練程式碼片段

以 YOLOv8n.pt 為例,調整 epochs 10,batch size 16(初學者建議用較小模型快測)。訓練時 Colab自動監控運算資源,過程 loss/metrics 視覺化,修正資料異常隨手重跑。

# 安裝 YOLOv8 (Ultralytics)
!pip install ultralytics

# 下載 Roboflow 資料集(用個人帳號取得 API Key 和專案下載連結)
!curl -L "https://universe.roboflow.com/YOUR_WORKSPACE/YOUR_PROJECT_VERSION/download.zip?api_key=YOUR_API_KEY" -o roboflow_dataset.zip
!unzip roboflow_dataset.zip -d ./dataset

# 啟動 YOLO訓練
from ultralytics import YOLO

model = YOLO('yolov8n.pt')
results = model.train(
    data='./dataset/data.yaml',
    epochs=10,
    imgsz=640,
    batch=16
)

# 推論/測試單張夜市圖片
img = './dataset/test/nightmarket.jpg'
pred = model.predict(source=img, save=True, conf=0.25)

溫馨小提醒:

epochs=10 是不夠的,但是數字愈高,要花的時間愈久,如果是讓 Gemini 幫忙生成程式碼的話,按下執行之前,記得調整一下(正常 epochs 的值應該都會是 100 ,就是 Colab 很有可能會跑個三天三夜的那種XD)


4. 資料存檔與模型下載

(1) 訓練結束將最佳.pt模型下載保存,方便未來本地CPU/雲端部署。

  • pt 檔案是什麼?

pt 檔案是一種與 PyTorch(一個開源機器學習框架)相關的檔案格式,全稱為 PyTorch Model。pt 檔案包含模型的架構、權重(weights)以及訓練狀態(如優化器參數)。例如,訓練一個夜市小吃偵測模型後,Roboflow 或 Ultralytics YOLO 會生成 .pt 檔案,供後續推理或進一步訓練使用。

  • pt 檔案在 Roboflow 的 Version 裡面也可以找到:


https://ithelp.ithome.com.tw/upload/images/20250921/20129220efW16XpC8o.jpg


(2) 目標是能產生高辨識度AI,這樣就能在APP/Web使用囉~


五、延伸閱讀


上一篇
Day6. 從零開始打造個人專屬 AI 營養顧問 Ep. 5:訓練「台灣夜市小吃」的 YOLO 模型
下一篇
Day8. 使用 Hugging Face 預訓練模型(Pre-trained Models)打造個人專屬 AI 營養顧問
系列文
AI 營養師 + Web3 數位健康護照35
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言